 
		CS8221 NEAT (New Enhanced AT) chipset register 
 
 
Read register: 
 
	mov	al,reg_num      ; Register number 
	out	22h,al 
	jmp	short	$+2 
	jmp	short	$+2 
	in	al,23h 
	jmp	short	$+2 
	jmp	short	$+2 
 
Write register: 
 
	mov	al,reg_num	; Register number 
	out	22h,al 
	jmp	short	$+2 
	jmp	short	$+2 
	mov	al,data		; Data for write 
	out	23h,al 
	jmp	short	$+2 
	jmp	short	$+2 
 
 
 
	 Register description 
	______________________ 
 
  Register 01 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 ' ' ' 3 3 
   3   3   3 3  DMA Clock Sourse 
   3   3   3 3          0 = SCLK/2 
   3   3   3 3          1 = SCLK 
   3   3   3  EMR Bit 
   3   3   3            0 = Disable 
   3   3   3            1 = Enable  
   3   3    8 Bit DMA Wait States 
   3   3                00 = 1 Wait State 
   3   3                01 = 2 Wait States 
   3   3                10 = 3 Wait States 
   3   3                11 = 4 Wait States   
   3    16 Bit DMA Wait States 
   3                    00 = 1 DMA Wait 
   3                    01 = 2 DMA Waits 
   3                    10 = 3 DMA Waits 
   3                    11 = 4 DMA Waits  
    XIOR/XIOW Wait States 
                        00 = 1 Wait State 
                        01 = 2 Wait States 
                        10 = 3 Wait States 
                        11 = 4 Wait States   
 
 Register   60 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 ' 3 3 3 3 3 3 
   3 3 3 3 3 3  READY Timeout 
   3 3 3 3 3 3          Read Only   
   3 3 3 3 3  Reserved  
   3 3 3 3  NMI Enable 
   3 3 3 3              0 = Disable 
   3 3 3 3              1 = NMI Enable    
   3 3 3  Reserved  
   3 3  Processor Clock Select 
   3 3                  0 = CLK2IN 
   3 3                  1 = BCLK  
   3  CPU Reset - Read Only  
   3                    0 
    82C11 Revision Number 
                        00 Read Only  
 
 Register   61 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 3 3 ' ' ' 
 3 3   3   3    I/O Command Delay 
 3 3   3   3            00 = 0 Cycles 
 3 3   3   3            01 = 1 Cycles 
 3 3   3   3            10 = 2 Cycles 
 3 3   3   3            11 = 3 Cycles  
 3 3   3    8 Bit Command Delay 
 3 3   3                00 = 0 Cycles 
 3 3   3                01 = 1 Cycles 
 3 3   3                10 = 2 Cycles 
 3 3   3                11 = 3 Cycles  
 3 3    16 Bit Command Delay 
 3 3                    00 = 0 Cycles 
 3 3                    01 = 1 Cycles 
 3 3                    10 = 2 Cycles 
 3 3                    11 = 3 Cycles  
 3  Quick Mode 
 3                      0 = Enabled 
 3                      1 = Disabled  
  Address Hold 
                        0 = Disabled 
                        1 = Enabled  
 
 Register   62 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 3 3 ' ' ' 
 3 3   3   3    Bus Clock Source 
 3 3   3   3            00 = CLK2IN/2 
 3 3   3   3            01 = CLK2IN 
 3 3   3   3            10 = ATCLK 
 3 3   3   3            11 = Reserved  
 3 3   3    8 Bit Wait States 
 3 3   3                00 = 2 Wait States 
 3 3   3                01 = 3 Wait States 
 3 3   3                10 = 4 Wait States 
 3 3   3                11 = 5 Wait States  
 3 3    16 Bit Wait States 
 3 3                    00 = 0 Wait States 
 3 3                    01 = 1 Wait States 
 3 3                    10 = 2 Wait States 
 3 3                    11 = 3 Wait States  
 3  Reserved  
  Reserved  
 
 Register   64 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 3 3 3 3 3 3 3 3 
 3 3 3 3 3 3 3  Reserved  
 3 3 3 3 3 3  Reserved  
 3 3 3 3 3  Reserved  
 3 3 3 3  Reserved  
 3 3 3  Reserved  
 3 3  Read Only  
 3  Read Only  
  Read Only  
 
 Register   65 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 3 3 3 3 3 3 3 3 
 3 3 3 3 3 3 3  F000h ROM Disable 
 3 3 3 3 3 3 3          0 = Enabled 
 3 3 3 3 3 3 3          1 = Disabled  
 3 3 3 3 3 3  E000h ROM Disable 
 3 3 3 3 3 3            0 = Enabled 
 3 3 3 3 3 3            1 = Disabled  
 3 3 3 3 3  D000h ROM Disable 
 3 3 3 3 3              0 = Enabled 
 3 3 3 3 3              1 = Disabled  
 3 3 3 3  C000h ROM Disable 
 3 3 3 3                0 = Enabled 
 3 3 3 3                1 = Disabled  
 3 3 3  F000H Shadow Read Only 
 3 3 3                  0 = Read/Write 
 3 3 3                  1 = Read Only  
 3 3  E000H Shadow Read Only 
 3 3                    0 = Read/Write 
 3 3                    1 = Read Only  
 3  D000H Shadow Read Only 
 3                      0 = Read/Write 
 3                      1 = Read Only  
  C000H Shadow Read Only 
                        0 = Read/Write 
                        1 = Read Only  
 
 Register   66 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 3 3 3 3 3 3 3 3 
 3 3 3 3 3 3 3  Reserved  
 3 3 3 3 3 3  Reserved  
 3 3 3 3 3  Reserved  
 3 3 3 3  Reserved  
 3 3 3  Reserved  
 3 3  0-256K Memory Status 
 3 3                    0 = Disabled 
 3 3                    1 = Off Board  
 3  256-512K Memory Status 
 3                      0 = Disabled 
 3                      1 = Off Board  
  128K Resolution 
                        0 = Disabled 
                        1 = Enabled  
 
 Register   67 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 ' ' 
       3        A000H 16K Shadow 
       3                0000 = All Disabled 
       3                0001 = A000H Enabled 
       3                0010 = A400H Enabled 
       3                0100 = A800H Enabled 
       3                1000 = AC00H Enabled 
        B000H 16K Shadow 
                        0000 = All Disabled 
                        0001 = B000H Enabled 
                        0010 = B400H Enabled 
                        0100 = B800H Enabled 
                        1000 = BC00H Enabled  
 
 Register   68 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 ' ' 
       3        C000H 16K Shadow 
       3                0000 = All Disabled 
       3                0001 = C000H Enabled 
       3                0010 = C400H Enabled 
       3                0100 = C800H Enabled 
       3                1000 = CC00H Enabled  
        D000H 16K Shadow 
                        0000 = All Disabled 
                        0001 = D000H Enabled 
                        0010 = D400H Enabled 
                        0100 = D800H Enabled 
                        1000 = DC00H Enabled  
 
 Register   69 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 ' ' 
       3        E000H 16K Shadow 
       3                0000 = All Disabled 
       3                0001 = E000H Enabled 
       3                0010 = E400H Enabled 
       3                0100 = E800H Enabled 
       3                1000 = EC00H Enabled  
        F000H 16K Shadow 
                        0000 = All Disabled 
                        0001 = F000H Enabled 
                        0010 = F400H Enabled 
                        0100 = F800H Enabled 
                        1000 = FC00H Enabled  
 
 Register   6a 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 ' 3 3 3 3 3 3 
   3 3 3 3 3 3  Reserved  
   3 3 3 3 3  Reserved  
   3 3 3 3  Reserved  
   3 3 3  Reserved  
   3 3  Reserved  
   3  # Banks 0/1 
   3                    0 = 1 Bank 
   3                    1 = 2 Banks  
    Banks 0/1 Type 
                        00 = Disabled 
                        01 = 256K/64K 
                        10 = 256K 
                        11 = 1M  
 
 Register   6b 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 3 3 3 3 ' ' 
 3 3 3 3   3    ROM Wait States 
 3 3 3 3   3            00 = 0 Waits 
 3 3 3 3   3            01 = 1 Waits 
 3 3 3 3   3            10 = 2 Waits 
 3 3 3 3   3            11 = 3 Waits  
 3 3 3 3    EMS Access Waits 
 3 3 3 3                00 = 0 Waits 
 3 3 3 3                01 = 1 Waits 
 3 3 3 3                10 = 2 Waits 
 3 3 3 3                11 = 3 Waits  
 3 3 3  EMS Enable 
 3 3 3                  0 = Disabled 
 3 3 3                  1 = Enabled  
 3 3  RAM Access Waits 
 3 3                    0 = 0 Waits 
 3 3                    1 = 1 Waits  
 3  1M Relocation 
 3                      0 = Not Relocated 
 3                      1 = Relocated  
  Interleave Enable 
                        0 = Disabled 
                        1 = Enabled  
                       Page Mode Enable 
                        0 = Disabled 
                        1 = Enabled  
 
 Register   6c 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 ' 3 3 3 3 3 3 
   3 3 3 3 3 3  Reserved  
   3 3 3 3 3  Reserved  
   3 3 3 3  Reserved  
   3 3 3  Reserved  
   3 3  4-Way Interleave 
   3 3                  0 = 2 - Way 
   3 3                  1 = 4 - Way  
   3  # Banks 2/3 
   3                    0 = 1 Bank 
   3                    1 = 2 Banks  
    Banks 2/3 Type 
                        00 = Disabled 
                        01 = Reserved 
                        10 = 256K 
                        11 = 1M  
 
 Register   6d 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 ' ' 
       3        EMS I/O Address 
       3                0000 = 208/209H 
       3                0001 = 218/219H 
       3                0101 = 258/259H 
       3                0110 = 268/269H 
       3                1010 = 2A8/2A9H 
       3                1011 = 2B8/2B9H 
       3                1110 = 2E8/2E9H 
       3                All others are 
       3                Reserved  
        EMS Base Address 
                        0000 = C000H 
                        0001 = C400H 
                        0010 = C800H 
                        0011 = CC00H 
                        0100 = D000H 
                        0101 = D400H 
                        0110 = D800H 
                        0111 = DC00H 
                        1000 = E000H 
                        All others are 
                        Reserved  
 
 Register   6e 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 ' ' ' ' 
   3   3   3    EMS Page 3 
   3   3   3            00 = 1M - 2M 
   3   3   3            01 = 2M - 4M 
   3   3   3            10 = 4M - 6M 
   3   3   3            11 = 6M - 8M  
   3   3    EMS Page 2 
   3   3                00 = 1M - 2M 
   3   3                01 = 2M - 4M 
   3   3                10 = 4M - 6M 
   3   3                11 = 6M - 8M  
   3    EMS Page 1 
   3                    00 = 1M - 2M 
   3                    01 = 2M - 4M 
   3                    10 = 4M - 6M 
   3                    11 = 6M - 8M  
    EMS Page 0 
                        00 = 1M - 2M 
                        01 = 2M - 4M 
                        10 = 4M - 6M 
                        11 = 6M - 8M  
 
 Register   6f 
 ============= 
76543210 
 3 3 3 3 3 3 3  
 
 ' 3 3 3 3 3 
     3 3 3 3 3  Reserved  
     3 3 3 3  CPU A20 Gate 
     3 3 3 3            MUST be 1  
     3 3 3  RAS Counter 
     3 3 3              0 = Disabled 
     3 3 3              1 = Enabled  
     3 3  Reserved  
     3  External EMS Mapper 
     3                  0 = Disabled 
     3                  1 = Enabled  
      EMS Amount 
                        000 = Less than 1M 
                        001 = 1.0M 
                        010 = 2.0M 
                        011 = 3.0M 
                        100 = 4.0M 
                        101 = 5.0M 
                        110 = 6.0M 
                        111 = 7.0M  
 
